package blue.stack.serializableParcelablegenerator.typeserializers;
import blue.stack.serializableParcelablegenerator.typeserializers.serializers.SParcelableListSerializer;
import com.intellij.psi.PsiType;
import blue.stack.serializableParcelablegenerator.typeserializers.serializers.ParcelableListSerializer;
import blue.stack.serializableParcelablegenerator.util.PsiUtils;
public class ParcelableListSerializerFactory implements TypeSerializerFactory {
private ParcelableListSerializer mSerializer;
private SParcelableListSerializer mSPSerializer;
public ParcelableListSerializerFactory() {
mSerializer = new ParcelableListSerializer();
mSPSerializer=new SParcelableListSerializer();
}
@Override
public TypeSerializer getSerializer(PsiType psiType) {
if (PsiUtils.isTypedClass(psiType, "java.util.List", "blue.stack.serializableParcelable.IParcelable")) {
return mSPSerializer;
}
// There might actually be a way to do this w/ a Collection, but it might not be order-safe
if (PsiUtils.isTypedClass(psiType, "java.util.List", "android.os.Parcelable")) {
return mSerializer;
}
return null;
}
}